package com.ktgj.customer.domain;

import org.apache.catalina.LifecycleState;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.common.core.web.domain.BaseEntity;

import java.util.ArrayList;
import java.util.List;

/**
 * 菜单对象 menu
 * 
 * @author ruoyi
 * @date 2021-10-15
 */
public class Menu extends BaseEntity
{
    public Menu()
    {
        children = new ArrayList<>();
    }

    private static final long serialVersionUID = 1L;

    /** 菜单ID */
    private Long menuId;

    /** 菜单名称 */
    @Excel(name = "菜单名称")
    private String menuName;

    /** 菜单路径 */
    @Excel(name = "菜单路径")
    private String menuUrl;

    /** 父菜单 */
    @Excel(name = "父菜单")
    private Long menuParent;

    /** 菜单图标 */
    @Excel(name = "菜单图标")
    private String menuIcon;

    /** 菜单备注 */
    @Excel(name = "菜单备注")
    private String menuDesc;

    /** 菜单状态 */
    @Excel(name = "菜单状态")
    private String menuStatus;

    /** 模块 */
    @Excel(name = "模块")
    private String model;

    /** 排序 */
    @Excel(name = "排序")
    private String sort;

    private List<Menu> children;

    public List<Menu> getChildren()
    {
        return children;
    }

    public void setChildren(List<Menu> children)
    {
        this.children = children;
    }

    public String getModel() {
        return model;
    }

    public void setModel(String model) {
        this.model = model;
    }

    public String getSort() {
        return sort;
    }

    public void setSort(String sort) {
        this.sort = sort;
    }

    public void setMenuId(Long menuId)
    {
        this.menuId = menuId;
    }

    public Long getMenuId() 
    {
        return menuId;
    }
    public void setMenuName(String menuName) 
    {
        this.menuName = menuName;
    }

    public String getMenuName() 
    {
        return menuName;
    }
    public void setMenuUrl(String menuUrl) 
    {
        this.menuUrl = menuUrl;
    }

    public String getMenuUrl() 
    {
        return menuUrl;
    }
    public void setMenuParent(Long menuParent) 
    {
        this.menuParent = menuParent;
    }

    public Long getMenuParent() 
    {
        return menuParent;
    }
    public void setMenuIcon(String menuIcon) 
    {
        this.menuIcon = menuIcon;
    }

    public String getMenuIcon() 
    {
        return menuIcon;
    }
    public void setMenuDesc(String menuDesc) 
    {
        this.menuDesc = menuDesc;
    }

    public String getMenuDesc() 
    {
        return menuDesc;
    }
    public void setMenuStatus(String menuStatus) 
    {
        this.menuStatus = menuStatus;
    }

    public String getMenuStatus() 
    {
        return menuStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("menuId", getMenuId())
            .append("menuName", getMenuName())
            .append("menuUrl", getMenuUrl())
            .append("menuParent", getMenuParent())
            .append("menuIcon", getMenuIcon())
            .append("menuDesc", getMenuDesc())
            .append("menuStatus", getMenuStatus())
            .toString();
    }
}
